#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>
	/*int main()
	{
		char str1[] = "hello bit.";
		char str2[] = "hello bit.";
		const char* str3 = "hello bit.";
		const char* str4 = "hello bit.";
		if (str1 == str2)
			printf("str1 and str2 are same\n");
		else
			printf("str1 and str2 are not same\n");
		if (str3 == str4)
			printf("str3 and str4 are same\n");
		else
			printf("str3 and str4 are not same\n");
		return 0;
	}*/

//int main()
//{
//	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
//	int (*p)[10] = &arr;
//	int i = 0;
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	for (i = 0; i < sz; i++)
//	{
//		printf("%d ", (*p)[i]);//(*p)[i=arr[i]=p[i]
//	}
//	return 0;
//}
//

//void void_test(int arr[3][5], int t, int i)
//{
//	int j = 0;
//	int c = 0;
//	for (j = 0; j < t; j++)
//	{
//		for (c = 0; c < i; c++)
//		{
//			printf("%d ", arr[j][c]);
//		}
//		printf("\n");
//	}
//
//}
//
//int main()
//{
//	int arr[3][5] = { 1,2,3,4,5,4,5,6,7,8,7,8,9,10,4 };
//	void_test(arr, 3, 5);
//
//	return 0;
//}

//void void_test(int (*p)[5], int t, int i)
//{
//	int j = 0;
//	int c = 0;
//	for (j = 0; j < t; j++)
//	{
//		for (c = 0; c < i; c++)
//		{
//			printf("%d ", p[j][c]);//p[j][c]=*(*(p+j)+c)
//		}
//		printf("\n");
//	}
//
//}
//
//int main()
//{
//	int arr[3][5] = { 1,2,3,4,5,4,5,6,7,8,7,8,9,10,4 };
//	void_test(arr, 3, 5);
//
//	return 0;
//}
//
//void test()
//{
//	printf("hehe\n");
//
//}
//
//int main()
//{
//	test();
//	printf("%p\n", test);
//	printf("%p\n", &test);
//	return 0;
//}

//void add1()
//{
//	printf("hehe\n");
//}
//
//int add2(int x, int y)
//{
//
//	return x + y;
//}
//
//int main()
//{
//	void (*add1)() = add1;
//
//	int (*add2)(int x, int y) = add2;
//
//	return 0;
//}
//
//int add(int x, int y)
//{
//
//	return x + y;
//}
//
//int main()
//{
//	int (*pf3)(int, int) = add;
//
//	printf("%d\n", (*pf3)(2, 3));
//	printf("%d\n", pf3(5, 3));
//	return 0;
//}
 
typedef unsigned int unit;

typedef int* ptr_t;

typedef int (*parr_t)[3];

typedef int(*adde_t)(int);